( function( $ )    
{   
    $.fn.wresize = function( f )    
    {   
        version = '1.1';   
        wresize = {fired: false, width: 0};   
   
        function resizeOnce()    
        {   
            if ( $.browser.msie )   
            {   
                if ( ! wresize.fired )   
                {   
                    wresize.fired = true;   
                }   
                else    
                {   
                    var version = parseInt( $.browser.version, 10 );   
                    wresize.fired = false;   
                    if ( version < 7 )   
                    {   
                        return false;   
                    }   
                    else if ( version == 7 )   
                    {   
                        //a vertical resize is fired once, an horizontal resize twice   
                        var width = $( window ).width();   
                        if ( width != wresize.width )   
                        {   
                            wresize.width = width;   
                            return false;   
                        }   
                    }   
                }   
            }   
   
            return true;   
        }   
   
        function handleWResize( e )    
        {   
            if ( resizeOnce() )   
            {   
                return f.apply(this, [e]);   
            }   
        }   
   
        this.each( function()    
        {   
            if ( this == window )   
            {   
                $( this ).resize( handleWResize );   
            }   
            else   
            {   
                $( this ).resize( f );   
            }   
        } );   
   
        return this;   
    };   
   
} ) ( jQuery );  